Packet switched networks transmit data in packets between two or more nodes. Packets include data frames having header records that provide relevant information to the network. This header information may identify the packet to the network. Each node in a packet switched network may advance the packet towards its final destination by handing it off to the next node in, for example, a chain of nodes. These nodes are conventionally controlled by software. This software may include algorithms that handle, for example, network congestion and may also determine the most optimal route for a particular packet to a particular destination.
Adding a new call to an IP network may not only cause the new call to violate QoS requirements, but may also cause deleterious effects on other calls or sessions taking place on the network. This may occur when, for example, the call or session shares resources with other calls or sessions on the network. In order to maintain the proper functionality of networks and to continue providing reliable service, it is important not to admit a call into the network unless is will meet QoS requirements for the network with a relatively high probability.
Conventional packet switching algorithms may regulate the QoS in a non-distributed fashion, leading to complex control and packet routing schemes. Some exemplary methods of solving various problems with maintaining an acceptable QoS include: queue management, load distribution, and traffic shaping. Other methods may include the utilization of call admission control (CAC) and/or session management (SM). For example, a control algorithm may typically be run from a remote location, such as, for example, a mainframe computer. This network control algorithm may then be utilized to control traffic to and from various nodes throughout the network depending on various network conditions such as, for example, network congestion or failure.
This conventional approach suffers from a number of drawbacks. One such drawback is that the algorithm is traditionally very complex, and in many instances will need to evaluate traffic throughout the network (e.g., at each node) to control traffic entering and exiting, for example, a WAN at each of the nodes. Thus, the calculations required for a network-wide control may be time consuming and may require a great deal of processing resources. Additionally, the addition of new nodes to the network may be problematic as the network-wide algorithm may have to be revised and updated to satisfy the changes to the network. Additionally, some conventional approaches may admit certain calls to a network and determine only a few seconds later that that call violates QoS requirements, which may require the network to subsequently drop the call after the call has had the opportunity to negatively impact ongoing calls or sessions on the network.
As can be seen from the foregoing, a need exists for a control algorithm that can manage the transmission of data in a packet switched network in a distributed fashion. Additionally, what is needed is an algorithm that is scalable and that permits the addition and subtraction of nodes from the network with minimal reconfiguration requirements. Additionally, what is needed is an algorithm that is a combination of CAC and SM.
In addition, in some networks (e.g., military networks), security requirements uses an encryption device that prevents communicating QoS information from the core Wide Area Network (WAN) to the Local Area Network (LAN) at the ingress point where call admission control occurs. Thus, the need exists for a call admission control algorithm that looks at the WAN as a black box, measure the WAN performance, and generate admission and preemption policies in a distributed and scalable fashion without requiring any WAN information to cross the security boundary.
Also, with the old circuit switched networks, Multi-Level Precedence and Preemption (MLPP) is well defined for telephony (voice). With the emerge of packet switched networks with heterogeneous traffic (voice, video, and data), a call admission and session management technique that consider MLPP for heterogeneous traffic is needed.